package zhtt.parameter;

import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * Created by ztt on 2018/5/19.
 */
public interface DeptMapper {

    /**
     * 保存时，接收自定义对象类型
     * @param dept
     * @return
     */
    int save01(Dept dept);

    /**
     * 保存时，接收map集合类型
     * @param user
     * @return
     */
    int save02(Map<String,Object> user);

    /**
     * 批量保存，接收list集合对象
     * @param depList
     * @return
     */
    int save03(List<Dept> depList);

    /* 查询时返回int类型 */
    int query01();

    /**
     * 查询时返回Stirng类型
     * @param id
     * @return
     */
    String query02(int id);

    /**
     * 查询时，返回类型为Map
     * 接收参数为int类型
     * @param id
     * @return
     */
    Map<String,Object> query03(int id);

    /**
     * 查询时，返回类型为List
     * @param name
     * @return
     */
    List<String> query04(String name);

    /**
     * 查询时，返回类型为自定义对象
     * @param id
     * @return
     */
    Dept query05(int id);

    /**
     * 查询时，返回类型为List
     * @param name
     * @return
     */
    List<Dept> query06(String name);

    /**
     * 查询时，返回类型为List
     * @param name
     * @return
     */
    List<Dept> query07(String name);

    /**
     * 查询时，返回类型为List
     * @param name
     * @return
     */
    List<Dept> query08(String name);

    /**
     * 查询时，返回类型为List
     * @param name
     * @return
     */
    List<Dept> query09(String name);

    /**
     * 多个参数
     * @param name
     * @return
     */
    List<Dept> query10(String name,int id);

    /**
     * 多个参数
     * @param name
     * @return
     */
    List<Dept> query11(@Param("name")String name,@Param("id") int id);

    /**
     * 接收参数为string类型
     * @param name
     * @return
     */
    List<Dept> query12(@Param("name")String name);

    /**
     * 接收参数为List<String>类型
     * @param idList
     * @return
     */
    List<Dept> query13(List<String> idList);
}
